package booroo.basic;

import java.util.Scanner;

import booroo.model.SungJuk_V0;
import booroo.service.JDBCSungJuk;

public class J19_SungJuk_v6 {
	private static final String title = "- 배열을 이용한 성적프로그램 -";
	private static final String menu = ">> 추가(1) 조회(2) 수정(3) 삭제(4) 종료(0)";
	private static final String addmsg = ">> 이름,국어,영어,수학 순으로 입력하세요!";
	private static final String modmsg1 = ">> 수정할 데이터 번호를 입력하세요!";
	private static final String modmsg2 = ">> 수정할 데이터를 이름,국어,영어,수학 순으로 입력하세요!";
	private static final String delmsg = ">> 삭제할 데이터 번호를 입력하세요!";
	
	
	public static void main(String[] args) {
		// 오라클 데이터 베이스를 이용한 성적 처리
		// ArraySungJuk 대신 JDBCSungJuk으로 변경
		JDBCSungJuk sjsrv = new JDBCSungJuk();
		Scanner sc = new Scanner(System.in);
		
		while(true){
			System.out.println(title);
			System.out.println(menu);
			switch(sc.nextInt()){
			case 0: sc.close(); System.exit(0); break; 
			case 1: addSungJuk(sc, sjsrv); break; 
			case 2: showSungJuk(sjsrv); break;
			case 3: modifySungJuk(sc, sjsrv); break;
			case 4: removeSungJuk(sc, sjsrv); break;
			}
		}
		
	}

	public static void addSungJuk(Scanner sc,JDBCSungJuk sjsrv){
		// 성적데이터 입력받아 sungjuk테이블에 저장1
		System.out.println(addmsg);
		SungJuk_V0 sj = 
				new SungJuk_V0(sc.next(), sc.nextInt(), sc.nextInt(), sc.nextInt());
		sjsrv.newSungJuk(sj);
	}
	
	public static void showSungJuk(JDBCSungJuk sjsrv){
		// sungjuk테이블에 저장된 성적데이터 모두 출력
		System.out.println(sjsrv.readSungJuk());
	}

	public static void modifySungJuk(Scanner sc,JDBCSungJuk sjsrv){
		System.out.println(sjsrv.readSungJuk());
		System.out.println(modmsg1);
		String sjno = sc.next();
		System.out.println(modmsg2);
		SungJuk_V0 sj = 
				new SungJuk_V0(sc.next(), sc.nextInt(), sc.nextInt(), sc.nextInt());
		sj.setSjno(sjno); // !!
		if(sjsrv.modifySungJuk(sj)){
			System.out.println(sjno + "번 데이터가 성공적으로 수정되었습니다!"
					+ "");
					}
		
		System.out.println(sjsrv.readSungJuk());
		
	}
	public static void removeSungJuk(Scanner sc,JDBCSungJuk sjsrv){
		System.out.println(sjsrv.readSungJuk());
		System.out.println(delmsg);
		String sjno = sc.next();
				if(sjsrv.removeSungJuk(sjno)){
		System.out.println(sjno + "번 데이터가 삭제되었습니다!");
				}
		System.out.println(sjsrv.readSungJuk());
	}
	
}
